package cn.pigeon.usermanager.service;

import cn.pigeon.usermanager.pojo.User;
import cn.pigeon.usermanager.pojo.UserDetail;
import cn.pigeon.usermanager.pojo.UserView;

import java.util.List;

public interface UserService {
    /**
     * 根据用户名和密码查询用户
     * @param user
     * @return
     */
    User findByNameAndPassword(User user);

    /**
     * 查询所有用户信息,关联用户详情表
     * @return
     */
    List<UserView> findAll(UserView userView);

    /**
     * 根据用户id查询用户信息(关联用户详情)
     * @param userId
     * @return
     */
    User findByid(int userId);

    /**
     * 根据用户id查询用户详情
     * @param userId
     * @return
     */
    UserDetail findDetailByUserId(int userId);

    /**
     * 根据用户详情查询用户信息
     * @param userDetail
     * @return
     */
    List<User> findByDetail(UserDetail userDetail);

    /**
     * 根据id删除用户
     * @param id
     */
    void deleteById(int id);

    /**
     * 添加用户信息
     * @param user
     */
    void add(UserView userView);

    /**
     * 更新用户信息
     * @param user
     */
    void update(UserView userView);

    /**
     * 更新用户详情
     * @param userDetail
     * @param userId
     */
    void updateDetail(UserDetail userDetail,int userId);
}
